package generator.domain;

import java.io.Serializable;
import lombok.Data;

/**
 * 入库详细信息表 
 * @TableName SM_ProductInInfo
 */
@Data
public class SmProductininfo implements Serializable {
    /**
     * ID 
     */
    private Integer id;

    /**
     * 
     */
    private Integer totalid;

    /**
     * 入库单号 
     */
    private String storagenum;

    /**
     * 计划跟踪号 
     */
    private String productname;

    /**
     * 
     */
    private String guige;

    /**
     * 
     */
    private String barcode;

    /**
     * 物料编码 
     */
    private String productcode;

    /**
     * 实收数量 
     */
    private String techparams;

    /**
     * 单价 
     */
    private String bottlebarcode;

    /**
     * 单位 
     */
    private Integer bottleid;

    /**
     * 
     */
    private String bottlecode;

    /**
     * 金额 
     */
    private Integer gbid;

    /**
     * 
     */
    private String gbcode;

    /**
     * 含税单价 
     */
    private String suppliername;

    /**
     * 税率 
     */
    private Integer productorderid;

    /**
     * 含税金额 
     */
    private String productordercode;

    /**
     * 供应商名称 
     */
    private Integer supplierid;

    /**
     * 物料名称 
     */
    private Integer customerid;

    /**
     * 规格型号 
     */
    private String customername;

    /**
     * 
     */
    private String infoguid;

    /**
     * 
     */
    private Integer storagebinid;

    /**
     * 
     */
    private String storagebin;

    /**
     * 
     */
    private Integer warehouseid;

    /**
     * 
     */
    private String warehouse;

    /**
     * 
     */
    private String instate;

    /**
     * 备注 
     */
    private String note;

    /**
     * 
     */
    private Integer relateinid;

    /**
     * 
     */
    private String beikustate;

    /**
     * 
     */
    private String isbottlenew;

    /**
     * 
     */
    private String walveinfoid;

    /**
     * 
     */
    private String walveinfoname;

    /**
     * 
     */
    private String quotationcode;

    /**
     * 
     */
    private String typecode;

    /**
     * 
     */
    private String materialcode;

    /**
     * 
     */
    private String gborpart;

    /**
     * 
     */
    private String productintype;

    /**
     * 
     */
    private Integer num;

    /**
     * 
     */
    private Integer deliveryid;

    /**
     * 
     */
    private String deliverycode;

    /**
     * 
     */
    private String deliverydate;

    /**
     * 
     */
    private String deliverydetailstate;

    /**
     * 
     */
    private String productorderdetailid;

    /**
     * 
     */
    private String deliverydetailid;

    /**
     * 
     */
    private String oneornormcode;

    /**
     * 
     */
    private Integer uuid;

    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        SmProductininfo other = (SmProductininfo) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getTotalid() == null ? other.getTotalid() == null : this.getTotalid().equals(other.getTotalid()))
            && (this.getStoragenum() == null ? other.getStoragenum() == null : this.getStoragenum().equals(other.getStoragenum()))
            && (this.getProductname() == null ? other.getProductname() == null : this.getProductname().equals(other.getProductname()))
            && (this.getGuige() == null ? other.getGuige() == null : this.getGuige().equals(other.getGuige()))
            && (this.getBarcode() == null ? other.getBarcode() == null : this.getBarcode().equals(other.getBarcode()))
            && (this.getProductcode() == null ? other.getProductcode() == null : this.getProductcode().equals(other.getProductcode()))
            && (this.getTechparams() == null ? other.getTechparams() == null : this.getTechparams().equals(other.getTechparams()))
            && (this.getBottlebarcode() == null ? other.getBottlebarcode() == null : this.getBottlebarcode().equals(other.getBottlebarcode()))
            && (this.getBottleid() == null ? other.getBottleid() == null : this.getBottleid().equals(other.getBottleid()))
            && (this.getBottlecode() == null ? other.getBottlecode() == null : this.getBottlecode().equals(other.getBottlecode()))
            && (this.getGbid() == null ? other.getGbid() == null : this.getGbid().equals(other.getGbid()))
            && (this.getGbcode() == null ? other.getGbcode() == null : this.getGbcode().equals(other.getGbcode()))
            && (this.getSuppliername() == null ? other.getSuppliername() == null : this.getSuppliername().equals(other.getSuppliername()))
            && (this.getProductorderid() == null ? other.getProductorderid() == null : this.getProductorderid().equals(other.getProductorderid()))
            && (this.getProductordercode() == null ? other.getProductordercode() == null : this.getProductordercode().equals(other.getProductordercode()))
            && (this.getSupplierid() == null ? other.getSupplierid() == null : this.getSupplierid().equals(other.getSupplierid()))
            && (this.getCustomerid() == null ? other.getCustomerid() == null : this.getCustomerid().equals(other.getCustomerid()))
            && (this.getCustomername() == null ? other.getCustomername() == null : this.getCustomername().equals(other.getCustomername()))
            && (this.getInfoguid() == null ? other.getInfoguid() == null : this.getInfoguid().equals(other.getInfoguid()))
            && (this.getStoragebinid() == null ? other.getStoragebinid() == null : this.getStoragebinid().equals(other.getStoragebinid()))
            && (this.getStoragebin() == null ? other.getStoragebin() == null : this.getStoragebin().equals(other.getStoragebin()))
            && (this.getWarehouseid() == null ? other.getWarehouseid() == null : this.getWarehouseid().equals(other.getWarehouseid()))
            && (this.getWarehouse() == null ? other.getWarehouse() == null : this.getWarehouse().equals(other.getWarehouse()))
            && (this.getInstate() == null ? other.getInstate() == null : this.getInstate().equals(other.getInstate()))
            && (this.getNote() == null ? other.getNote() == null : this.getNote().equals(other.getNote()))
            && (this.getRelateinid() == null ? other.getRelateinid() == null : this.getRelateinid().equals(other.getRelateinid()))
            && (this.getBeikustate() == null ? other.getBeikustate() == null : this.getBeikustate().equals(other.getBeikustate()))
            && (this.getIsbottlenew() == null ? other.getIsbottlenew() == null : this.getIsbottlenew().equals(other.getIsbottlenew()))
            && (this.getWalveinfoid() == null ? other.getWalveinfoid() == null : this.getWalveinfoid().equals(other.getWalveinfoid()))
            && (this.getWalveinfoname() == null ? other.getWalveinfoname() == null : this.getWalveinfoname().equals(other.getWalveinfoname()))
            && (this.getQuotationcode() == null ? other.getQuotationcode() == null : this.getQuotationcode().equals(other.getQuotationcode()))
            && (this.getTypecode() == null ? other.getTypecode() == null : this.getTypecode().equals(other.getTypecode()))
            && (this.getMaterialcode() == null ? other.getMaterialcode() == null : this.getMaterialcode().equals(other.getMaterialcode()))
            && (this.getGborpart() == null ? other.getGborpart() == null : this.getGborpart().equals(other.getGborpart()))
            && (this.getProductintype() == null ? other.getProductintype() == null : this.getProductintype().equals(other.getProductintype()))
            && (this.getNum() == null ? other.getNum() == null : this.getNum().equals(other.getNum()))
            && (this.getDeliveryid() == null ? other.getDeliveryid() == null : this.getDeliveryid().equals(other.getDeliveryid()))
            && (this.getDeliverycode() == null ? other.getDeliverycode() == null : this.getDeliverycode().equals(other.getDeliverycode()))
            && (this.getDeliverydate() == null ? other.getDeliverydate() == null : this.getDeliverydate().equals(other.getDeliverydate()))
            && (this.getDeliverydetailstate() == null ? other.getDeliverydetailstate() == null : this.getDeliverydetailstate().equals(other.getDeliverydetailstate()))
            && (this.getProductorderdetailid() == null ? other.getProductorderdetailid() == null : this.getProductorderdetailid().equals(other.getProductorderdetailid()))
            && (this.getDeliverydetailid() == null ? other.getDeliverydetailid() == null : this.getDeliverydetailid().equals(other.getDeliverydetailid()))
            && (this.getOneornormcode() == null ? other.getOneornormcode() == null : this.getOneornormcode().equals(other.getOneornormcode()))
            && (this.getUuid() == null ? other.getUuid() == null : this.getUuid().equals(other.getUuid()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getTotalid() == null) ? 0 : getTotalid().hashCode());
        result = prime * result + ((getStoragenum() == null) ? 0 : getStoragenum().hashCode());
        result = prime * result + ((getProductname() == null) ? 0 : getProductname().hashCode());
        result = prime * result + ((getGuige() == null) ? 0 : getGuige().hashCode());
        result = prime * result + ((getBarcode() == null) ? 0 : getBarcode().hashCode());
        result = prime * result + ((getProductcode() == null) ? 0 : getProductcode().hashCode());
        result = prime * result + ((getTechparams() == null) ? 0 : getTechparams().hashCode());
        result = prime * result + ((getBottlebarcode() == null) ? 0 : getBottlebarcode().hashCode());
        result = prime * result + ((getBottleid() == null) ? 0 : getBottleid().hashCode());
        result = prime * result + ((getBottlecode() == null) ? 0 : getBottlecode().hashCode());
        result = prime * result + ((getGbid() == null) ? 0 : getGbid().hashCode());
        result = prime * result + ((getGbcode() == null) ? 0 : getGbcode().hashCode());
        result = prime * result + ((getSuppliername() == null) ? 0 : getSuppliername().hashCode());
        result = prime * result + ((getProductorderid() == null) ? 0 : getProductorderid().hashCode());
        result = prime * result + ((getProductordercode() == null) ? 0 : getProductordercode().hashCode());
        result = prime * result + ((getSupplierid() == null) ? 0 : getSupplierid().hashCode());
        result = prime * result + ((getCustomerid() == null) ? 0 : getCustomerid().hashCode());
        result = prime * result + ((getCustomername() == null) ? 0 : getCustomername().hashCode());
        result = prime * result + ((getInfoguid() == null) ? 0 : getInfoguid().hashCode());
        result = prime * result + ((getStoragebinid() == null) ? 0 : getStoragebinid().hashCode());
        result = prime * result + ((getStoragebin() == null) ? 0 : getStoragebin().hashCode());
        result = prime * result + ((getWarehouseid() == null) ? 0 : getWarehouseid().hashCode());
        result = prime * result + ((getWarehouse() == null) ? 0 : getWarehouse().hashCode());
        result = prime * result + ((getInstate() == null) ? 0 : getInstate().hashCode());
        result = prime * result + ((getNote() == null) ? 0 : getNote().hashCode());
        result = prime * result + ((getRelateinid() == null) ? 0 : getRelateinid().hashCode());
        result = prime * result + ((getBeikustate() == null) ? 0 : getBeikustate().hashCode());
        result = prime * result + ((getIsbottlenew() == null) ? 0 : getIsbottlenew().hashCode());
        result = prime * result + ((getWalveinfoid() == null) ? 0 : getWalveinfoid().hashCode());
        result = prime * result + ((getWalveinfoname() == null) ? 0 : getWalveinfoname().hashCode());
        result = prime * result + ((getQuotationcode() == null) ? 0 : getQuotationcode().hashCode());
        result = prime * result + ((getTypecode() == null) ? 0 : getTypecode().hashCode());
        result = prime * result + ((getMaterialcode() == null) ? 0 : getMaterialcode().hashCode());
        result = prime * result + ((getGborpart() == null) ? 0 : getGborpart().hashCode());
        result = prime * result + ((getProductintype() == null) ? 0 : getProductintype().hashCode());
        result = prime * result + ((getNum() == null) ? 0 : getNum().hashCode());
        result = prime * result + ((getDeliveryid() == null) ? 0 : getDeliveryid().hashCode());
        result = prime * result + ((getDeliverycode() == null) ? 0 : getDeliverycode().hashCode());
        result = prime * result + ((getDeliverydate() == null) ? 0 : getDeliverydate().hashCode());
        result = prime * result + ((getDeliverydetailstate() == null) ? 0 : getDeliverydetailstate().hashCode());
        result = prime * result + ((getProductorderdetailid() == null) ? 0 : getProductorderdetailid().hashCode());
        result = prime * result + ((getDeliverydetailid() == null) ? 0 : getDeliverydetailid().hashCode());
        result = prime * result + ((getOneornormcode() == null) ? 0 : getOneornormcode().hashCode());
        result = prime * result + ((getUuid() == null) ? 0 : getUuid().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", totalid=").append(totalid);
        sb.append(", storagenum=").append(storagenum);
        sb.append(", productname=").append(productname);
        sb.append(", guige=").append(guige);
        sb.append(", barcode=").append(barcode);
        sb.append(", productcode=").append(productcode);
        sb.append(", techparams=").append(techparams);
        sb.append(", bottlebarcode=").append(bottlebarcode);
        sb.append(", bottleid=").append(bottleid);
        sb.append(", bottlecode=").append(bottlecode);
        sb.append(", gbid=").append(gbid);
        sb.append(", gbcode=").append(gbcode);
        sb.append(", suppliername=").append(suppliername);
        sb.append(", productorderid=").append(productorderid);
        sb.append(", productordercode=").append(productordercode);
        sb.append(", supplierid=").append(supplierid);
        sb.append(", customerid=").append(customerid);
        sb.append(", customername=").append(customername);
        sb.append(", infoguid=").append(infoguid);
        sb.append(", storagebinid=").append(storagebinid);
        sb.append(", storagebin=").append(storagebin);
        sb.append(", warehouseid=").append(warehouseid);
        sb.append(", warehouse=").append(warehouse);
        sb.append(", instate=").append(instate);
        sb.append(", note=").append(note);
        sb.append(", relateinid=").append(relateinid);
        sb.append(", beikustate=").append(beikustate);
        sb.append(", isbottlenew=").append(isbottlenew);
        sb.append(", walveinfoid=").append(walveinfoid);
        sb.append(", walveinfoname=").append(walveinfoname);
        sb.append(", quotationcode=").append(quotationcode);
        sb.append(", typecode=").append(typecode);
        sb.append(", materialcode=").append(materialcode);
        sb.append(", gborpart=").append(gborpart);
        sb.append(", productintype=").append(productintype);
        sb.append(", num=").append(num);
        sb.append(", deliveryid=").append(deliveryid);
        sb.append(", deliverycode=").append(deliverycode);
        sb.append(", deliverydate=").append(deliverydate);
        sb.append(", deliverydetailstate=").append(deliverydetailstate);
        sb.append(", productorderdetailid=").append(productorderdetailid);
        sb.append(", deliverydetailid=").append(deliverydetailid);
        sb.append(", oneornormcode=").append(oneornormcode);
        sb.append(", uuid=").append(uuid);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}